const path = require('path');
module.exports = {
  style: {
    postcss: {
      mode: 'extends',
      loaderOptions: {
        postcssOptions: {
          ident: 'postcss',
          plugins: [
            [
              '@xianzhengquan/postcss-px-2-vw',
              {
                unitToConvert: 'px', //需要转换的单位，默认为"px"
                viewportWidth: 1920, // 视窗的宽度，对应的是我们设计稿的宽度，一般是750
                // viewportWidth: 3840, // 视窗的宽度，对应的是我们设计稿的宽度，一般是750
                unitPrecision: 6, //单位转换后保留的精度
                propList: [
                  //能转化为vw的属性列表
                  '*',
                ],
                viewportUnit: 'vw', // 希望使用的视口单位
                fontViewportUnit: 'vw', //字体使用的视口单位
                selectorBlackList: [], //需要忽略的CSS选择器，不会转为视口单位，使用原有的px等单位。
                minPixelValue: 1, //设置最小的转换数值，如果为1的话，只有大于1的值会被转换
                mediaQuery: false, //媒体查询里的单位是否需要转换单位
                replace: true, //是否直接更换属性值，而不添加备用属性
                exclude: /(\/|\\)(node_modules)(\/|\\)/, //忽略某些文件夹下的文件或特定文件，例如 'node_modules' 下的文件
              },
            ],
          ],
        },
      },
    },
  },
  webpack: {
    alias: {
      '@src': path.resolve(__dirname, 'src'),
      'components': path.resolve(__dirname, 'src/components'),
      'pages': path.resolve(__dirname, 'src/pages'),
      'asserts': path.resolve(__dirname, 'src/asserts'),
      'utils': path.resolve(__dirname, 'src/utils'),
      'service': path.resolve(__dirname, 'src/service'),
      'api': path.resolve(__dirname, 'src/api'),
      'store': path.resolve(__dirname, 'src/store'),
    },
    plugins: {
      add: [ /* ... */ ],
      remove: [ /* ... */ ],
    },
    configure: (webpackConfig, { env, paths }) => {
      /* ... */
      return webpackConfig;
    },
  },
  devServer: { 
    open: false,
    // 配置代理解决跨域
    proxy: {
      '/api': {
        // target: 'http://192.168.0.249:8080', // 测试地址
        target: 'https://bianjitech.net.cn/api/', // 生产地址
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      }
    }
   },
};